package com.sg.dto.integration.component;

import com.sg.common.dto.BaseDto;
import com.sg.dto.integration.component.MessageLocationNumDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

/**
 * @desc AddMessageNumReqDto
 * @使用场景
 */
@Data
public class AddMessageNumReqDto extends BaseDto implements Serializable {

    /**
     * mqtt消息主题 CHAT_MESSAGE:沟通消息 MESSAGE_CHANNEL:消息通道 IMPORTANT_MESSAGE:强提醒消息 MESSAGE_NUM:消息位置数量
     */
    @NotNull(message = "mqtt消息主题不能为空")
    @ApiModelProperty("mqtt消息主题")
    private String messageTopic;

    /**
     * webSocket端口
     */
    @NotNull(message = "webSocket端口不能为空")
    @ApiModelProperty("webSocket端口")
    private Long websocketPort;

    /**
     * webSocket地址
     */
    @NotNull(message = "webSocket地址不能为空")
    @ApiModelProperty("webSocket地址")
    private String websocketAddress;

    @ApiModelProperty("消息位置数量列表")
    private List<MessageLocationNumDto> messageLocationNumList = new ArrayList<>();

}
